﻿namespace CatFax.Service.WebRole
{
    using System.ServiceModel;

    // NOTE: If you change the interface name "IAuditRowService" here, you must also update the reference to "IAuditRowService" in Web.config.
    [ServiceContract]
    public interface IAuditRowService
    {
        /// <summary>
        /// Adds an AuditRow to Azure storage
        /// </summary>
        /// <param name="partitionKey">
        /// The partition key.
        /// </param>
        /// <param name="rowKey">
        /// The row key.
        /// </param>
        /// <param name="displayData">
        /// Data (summary) for display purposes (not used)
        /// </param>
        /// <param name="rowData">
        /// XML fragment from SQL of row data
        /// </param>
        [OperationContract]
        void AddAuditRow(string partitionKey, string rowKey, string displayData, string rowData);

        /// <summary>
        /// Gets a row, based on the keys, from Azure storage
        /// </summary>
        /// <param name="partitionKey">
        /// The partition key.
        /// </param>
        /// <param name="rowKey">
        /// The row key.
        /// </param>
        /// <returns>
        /// xml fragment (of row data) that is stored in the table
        /// </returns>
        [OperationContract]
        string GetAuditRowData(string partitionKey, string rowKey);

    }
}
